export class DateFormatUtil {
    /**
     * 格式化日期为 yyyy-MM-dd HH:mm 格式的字符串。
     * 
     * @param date 要格式化的日期对象，默认为当前日期和时间。
     * @returns 返回格式化后的日期字符串。
     */
    public static formatDate(date: Date = new Date()): string {
        const year = date.getFullYear();
        const month = this.padZero(date.getMonth() + 1);
        const day = this.padZero(date.getDate());
        const hours = this.padZero(date.getHours());
        const minutes = this.padZero(date.getMinutes());

        return `${year}-${month}-${day} ${hours}:${minutes}`;
    }

    /**
     * 为单个数字添加前导零，使其成为两位数。
     * 
     * @param num 需要格式化的数字。
     * @returns 返回格式化后的字符串。
     */
    private static padZero(num: number): string {
        return num < 10 ? '0' + num : num.toString();
    }
    public static getNowDateTime(): string {
        const date = new Date();
        const year = date.getFullYear();
        const month = this.padZero(date.getMonth() + 1);
        const day = this.padZero(date.getDate());
        const hours = this.padZero(date.getHours());
        const minutes = this.padZero(date.getMinutes());
        const seconds = this.padZero(date.getSeconds());

        return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
    }
}